import 'package:flutter/material.dart';
/**
 * 第01节：一般页面导航和返回
 * 
 * 
 * RaisedButton按钮组件
 * 它有两个最基本的属性：
    child：可以放入容器，图标，文字。让你构建多彩的按钮。
    onPressed：点击事件的相应，一般会调用Navigator组件。
    我们在作页面导航时，大量的使用了RaisedButton组件，这个组件的使用在实际工作中用的也比较多。
 * 
 * 
 * Navigator.push 和 Navigator.pop
 * 
 * Navigator.push：是跳转到下一个页面，它要接受两个参数一个是上下文context，另一个是要跳转的函数。
 * 
 * Navigator.pop：是返回到上一个页面，使用时传递一个context（上下文）参数，使用时要注意的是，你必须是有上级页面的，也就是说上级页面使用了Navigator.push。
 * 
 *  */

void main()=>runApp(MaterialApp( //这里要用MaterialApp
  title: '演示1',
  home:firstScreen()
));

class firstScreen extends StatelessWidget{
  @override

  Widget build(BuildContext context){
    return MaterialApp(
      home: Scaffold(
        appBar: new AppBar(
          title: new Text('导航和返回'),
        ),
        body: Center(
          child: Container(
              child: new RaisedButton(
                onPressed: (){
                  Navigator.push(context, new MaterialPageRoute(
                    builder: (context) => new sectionScreen()
                  )
                  );
                },
                child: new Text('点击查看商品详情'),
              ),
            ),
          )
      ),
    );
  }
}

class sectionScreen extends StatelessWidget{
  @override

  Widget build(BuildContext context){
    return MaterialApp(
      home:Scaffold(
        appBar: new AppBar(
          title: new Text('内页'),
        ),
        body:Center(
          child: Container(
            child: new RaisedButton(
              onPressed: (){
                Navigator.pop(context);
              },
              child: new Text('商品内页'),
            )
          ),
        )
      )
    );
  }
}